package com.encuestas;



import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;

import com.IO.creatorFiles;
import com.gio.lib.conexion.sync;
import com.medios.imark.encuesta.R;
import com.medios.imark.encuesta.R.string;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.Window;

public class inicio extends Activity {
	ProgressDialog progressDialog ;
	preferencias preferer;
	Thread hilo;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		requestWindowFeature(Window.FEATURE_NO_TITLE);
		setContentView(R.layout.main);  
		
		preferer= new preferencias(this);
		preferer.setFechasistema(utilidades.horaTime());
		preferer.save();
		
		if(preferer.getShortCut()=="Unknown")
		{
			shortCut();
			preferer.setShortCut("on");
			preferer.save();
		}
	
		
		
		/*
		String resul = preferer.getIsfirstLunch();
		
		if(resul=="Unknown")
		{
		firstlunch lunch = new firstlunch();
		lunch.execute(utilidades.getMac(inicio.this));
			
		}*/
		
		
		
		
		hilo = new Thread()
		{
			
			public void run ()
        	{
        		
        		try {
					
        		sleep(2000l);
        	
        		
        		
        	
        		Intent into = new Intent(getApplicationContext(), panelprincipal.class);
        		//Intent into = new Intent(getApplicationContext(), exportCamera.class);
        		startActivity(into);
        	
        			
				} catch (InterruptedException e) {
				
					e.printStackTrace();
				} finally 
				
				{
				
					finish();
				
				}
        			
        	}
			
		};
		
hilo.start();
	
	/*	if(resul.equals("on"))
		{
			hilo.start();
		}
		*/
		
	}
	
	
	
	
	void shortCut()
	{
		
		Intent intentoShort = new Intent(getApplicationContext(), getClass());
		intentoShort.setAction(Intent.ACTION_MAIN);
		
		Intent addinte = new Intent();
		addinte.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intentoShort);
		addinte.putExtra(Intent.EXTRA_SHORTCUT_NAME, "IntelligentSurvey");
		addinte.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,
	            Intent.ShortcutIconResource.fromContext(getApplicationContext(),
	                    R.drawable.ic_launcher));
		addinte.putExtra("duplicate", false); 
		addinte.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
		getApplicationContext().sendBroadcast(addinte);
		
		
		
		
	}
	
	
	public Dialog Mensaje(String mesaje, String titulo) {
		
		AlertDialog.Builder msgbox = new AlertDialog.Builder(this);
		msgbox.setMessage(mesaje);
		msgbox.setTitle(titulo);
		msgbox.setCancelable(false);

		msgbox.setPositiveButton("O.K.",new DialogInterface.OnClickListener() {
			
			public void onClick(DialogInterface dialog, int which) {
			
			finish();

				
			}
		});
		
		 msgbox.create();
		return msgbox.show();
	}
	
	
	
	class firstlunch extends AsyncTask<String, Void, Integer>
	{

		@Override
		protected void onPreExecute() {
	
try {
				
				progressDialog = new ProgressDialog(inicio.this);
				progressDialog.setTitle("Configurando dispositivo");
				progressDialog.setMessage("Descargando datos del sistemas,espere mientra termina la " +
						"configuracion");
				progressDialog.setIndeterminate(false);
				progressDialog.setCancelable(true);
				progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
				progressDialog.show();
				}
				catch (Exception ex)
				{
					Log.e("error de caja de dialogo", ex.getMessage());
				}
			
		}

		@Override
		protected void onPostExecute(Integer result) {
			if(progressDialog.isShowing()&& progressDialog!= null)
			{
				progressDialog.dismiss();
			}
			switch (result) {
			case 1:
				preferer.setIsfirstLunch("on");
				preferer.save();
				hilo.start();
		/*	Intent into = new Intent(getApplicationContext(), panelprincipal.class);
    		startActivity(into);
    		finish();*/
    		
				break;

			case 2:
				
				Mensaje("NO existe conexion a internet, verifique que tengatodas las conexiones" +
						"habilitadas",  "Fallo internet");
				break;
			case 3:
				Mensaje("Error al realizar la configuracion", "Error");
				break;
				
			case 4:
				Mensaje("Error al realizar la configuracion", "Error");
				break;
		
			}
		
		
		}
		
		
		@Override
		protected Integer doInBackground(String... params) {
			try {
				if(!sync.chequeaConexionInternet(inicio.this))
				{
					return 2;
				}
				URL g = new URL("http://r-visual.com/validaciones.php?mac=" + params[0]);
				String res = utilidades.ObtenerStResSaltolinea(g.openStream());
				if(res=="")
				{
					return 3;
				}
				creatorFiles.escrbirarchivo(inicio.this, res, "java.js");
			return 1;
				
				
			} catch (MalformedURLException e) {
				
				Log.e("error", e.getMessage());
				return 3;
			} catch (IOException e) {
				Log.e("error", e.getMessage());;
				return 4;
			}
			catch (Exception e){
				Log.e("error", e.getMessage());;
				return 5;
			}
		}
		}
		
		

		

		
	}
	


